package com.hm.base.service;

import com.hm.base.def.ScheduleMqPushTaskEnum;
import com.hm.base.su.BaseConfig;
import com.hm.base.vo.ScheduleTaskCallResultVo;
import com.hm.base.vo.ScheduleTaskVo;

/**
 * @author shishun.wang
 * @date 上午11:17:57 2017年9月13日
 * @version 1.0
 * @describe 定时任务计划
 */
public interface ScheduleTaskService {

	public String HTTP_INVOKER_EXPORT_CONTEXT = "/HttpInvokerEndpoing/base/ScheduleTaskService/"
			+ BaseConfig.HttpInvokerEndpoing.VERSION;

	/**
	 * mq 方式发送任务计划
	 * 
	 * @param mqPushTaskEnum
	 * @param scheduleTaskVo
	 * @return
	 */
	public ScheduleTaskCallResultVo mqPushTask(ScheduleMqPushTaskEnum mqPushTaskEnum, ScheduleTaskVo scheduleTaskVo);

	/**
	 * mq 及时发送任务计划，立即执行
	 * 
	 * @param mqPushTaskEnum
	 * @param scheduleTaskVo
	 * @return
	 */
	public ScheduleTaskCallResultVo promptlyPushMqTask(ScheduleMqPushTaskEnum mqPushTaskEnum,
			ScheduleTaskVo scheduleTaskVo);

}
